Comparator circuit with built-in programmable floating gate voltage reference

ABSTRACT

A circuit for setting a reference voltage in a floating gate circuit is configured as a precise voltage comparator circuit with a built-in programmable voltage reference. Once the one or more floating gates in the floating gate circuit are set during the a SET operation, the floating gate circuit is configured during a READ mode as a comparator circuit with a built-in voltage reference.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.10/884,234, filed Jul. 1, 2004, which is a continuation-in-part of U.S.application Ser. No. 10/338,189, filed Jan. 7, 2003 (now U.S. Pat. No.6,898,123), both applications are hereby incorporated by reference.

FIELD OF THE INVENTION

This invention relates to a method and circuit having an accuratevoltage reference, and more specifically to a floating gate circuitconfigured as a comparator circuit with a built-in accurate voltagereference.

BACKGROUND OF THE INVENTION

Programmable analog floating gate circuits have been used since theearly 1980's in applications that only require moderate absolute voltageaccuracy over time, e.g., an absolute voltage accuracy of 100-200 mVover time. Such devices are conventionally used to provide long-termnon-volatile storage of charge on a floating gate. A floating gate is anisland of conductive material that is electrically isolated from asubstrate but capacitively coupled to the substrate or to otherconductive layers. Typically, a floating gate forms the gate of an MOStransistor that is used to read the level of charge on the floating gatewithout causing any leakage of charge therefrom.

Various means are known in the art for introducing charge onto afloating gate and for removing the charge from the floating gate. Oncethe floating gate has been programmed at a particular charge level, itremains at that level essentially permanently, because the floating gateis surrounded by an insulating material which acts as a barrier todischarging of the floating gate. Charge is typically coupled to thefloating gate using hot electron injection or electron tunneling. Chargeis typically removed from the floating gate by exposure to radiation (UVlight, x-rays), avalanched injection, or Fowler-Nordheim electrontunneling. The use of electrons emitted from a cold conductor was firstdescribed in an article entitled Electron Emission in Intense ElectricFields by R. H. Fowler and Dr. L. Nordheim, Royal Soc. Proc., A, Vol.119 (1928). Use of this phenomenon in electron tunneling through anoxide layer is described in an article entitled Fowler-NordheimTunneling into Thermally Grown SiO₂ by M. Lanzlinger and E. H. Snow,Journal of Applied Physics, Vol. 40, No. 1 (January, 1969), both ofwhich are incorporated herein by reference. Such analog floating gatecircuits have been used, for instance, in digital nonvolatile memorydevices and in analog nonvolatile circuits including voltage reference,Vcc sense, and power-on reset circuits.

FIG. 1A is a schematic diagram that illustrates one embodiment of ananalog nonvolatile floating gate circuit implemented using twopolysilicon layers formed on a substrate and two electron tunnelingregions. FIG. 1A illustrates a cross-sectional view of an exemplaryprior art programmable voltage reference circuit 70 formed on asubstrate 71. Reference circuit 70 comprises a Program electrode formedfrom a first polysilicon layer (poly1), an Erase electrode formed from asecond polysilicon layer (poly2), and an electrically isolated floatinggate comprised of a poly1 layer and a poly2 layer connected together ata corner contact 76. Typically, polysilicon layers 1 and 2 are separatedfrom each other by a thick oxide dielectric, with the floating gate fgbeing completely surrounded by dielectric. The floating gate fg is alsothe gate of an NMOS transistor TØ shown at 73, with a drain D and asource S that are heavily doped n+ regions in substrate 70, which is Ptype. (The number zero is also referred to as “0” or Ø herein.) Theportion of dielectric between the poly1 Program electrode and thefloating gate fg, as shown at 74, is a program tunnel region (or “tunneldevice”) TP, and the portion of dielectric between the poly1 floatinggate fg and the poly2 erase electrode, shown at 75, is an erase tunnelregion TE. Both tunnel regions have a given capacitance. Since thesetunnel regions 74,75 are typically formed in thick oxide dielectric,they are generally referred to as “thick oxide tunneling devices” or“enhanced emission tunneling devices.” Such thick oxide tunnelingdevices enable the floating gate to retain accurate analog voltages inthe +/−4 volt range for many years. This relatively high analog voltageretention is made possible by the fact that the electric field in mostof the thick dielectric in tunnel regions 74,75 remains very low, evenwhen several volts are applied across the tunnel device. This low fieldand thick oxide provides a high barrier to charge loss until the fieldis high enough to cause Fowler-Nordheim tunneling to occur. Finally,reference circuit 70 includes a steering capacitor CC that is thecapacitance between floating gate fg and a different n+ region formed inthe substrate that is connected to a Cap electrode.

FIG. 1B is a schematic diagram that illustrates a second embodiment of afloating gate circuit 70 that is implemented using three polysiliconlayers. The three polysilicon floating gate circuit 70′ is similar tothe two polysilicon embodiment except that, for example Erase electrodeis formed from a third polysilicon layer (poly 3). In addition, thefloating gate fg is formed entirely from a poly2 layer. Thus, in thisembodiment there is no need for a corner contact to be formed betweenthe poly1 layer portion and the poly2 layer portion of floating gate fg,which is required for the two polysilicon layer cell shown in FIG. 1A.

Referring to FIG. 2, shown at 20 is an equivalent circuit diagram forthe voltage reference circuit 70 of FIGS. 1A and 70′ of FIG. 1B. Forsimplicity, each circuit element of FIG. 2 is identically labeled withits corresponding element in FIGS. 1A and 1B.

Setting reference circuit 70 to a specific voltage level is accomplishedusing two separate operations. Referring-again to FIG. 1A, the floatinggate fg is first programmed or “reset” to an off condition. The floatinggate fg is then erased or “set” to a specific voltage level. Floatinggate fg is reset by programming it to a net negative voltage, whichturns off transistor TØ. This programming is done by holding the Programelectrode low and ramping the n+ bottom plate of the relatively largesteering capacitor CC to 15 to 20V via the Cap electrode. Steeringcapacitor CC couples the floating gate fg high, which causes electronsto tunnel through the thick oxide at 74 from the poly1 Program electrodeto the floating gate fg. This results in a net negative charge onfloating gate fg. When the bottom plate of steering capacitor CC isreturned to ground, this couples floating gate fg negative, i.e., belowground, which turns off the NMOS transistor TØ.

To set reference circuit 70 to a specific voltage level, the n+ bottomplate of steering capacitor CC, the Cap electrode, is held at groundwhile the Erase electrode is ramped to a high voltage, i.e., 12 to 20V.Tunneling of electrons from floating gate fg to the poly2 Eraseelectrode through the thick oxide at 75 begins when the voltage acrosstunnel device TE reaches a certain voltage, which is typicallyapproximately 11V. This tunneling of electrons from the fg throughtunnel device TE increases the voltage of floating gate fg. The voltageon floating gate fg then “follows” the voltage ramp coupled to the poly2Erase electrode, but at a voltage level offset by about 11V below thevoltage on the Erase electrode. When the voltage on floating gate fgreaches the desired set level, the voltage ramp on poly2 Erase electrodeis stopped and then pulled back down to ground. This leaves the voltageon floating gate fg set at approximately the desired voltage level.

As indicated above, reference circuit 70 meets the requirements forvoltage reference applications where approximately 200 mV accuracy issufficient. The accuracy of circuit 70 is limited for two reasons.First, the potential on floating gate fg shifts down about 100 mV to 200mV after it is set due to the capacitance of erase tunnel device TEwhich couples floating gate fg down when the poly2 Erase electrode ispulled down from a high voltage to ØV. The amount of this change dependson the ratio of the capacitance of erase tunnel device TE to the rest ofthe capacitance of floating gate fg (mostly due to steering capacitorCC), as well as the magnitude of the change in voltage on the poly2Erase electrode. This voltage “offset” is well defined and predictable,but always occurs in such prior art voltage reference circuits becausethe capacitance of erase tunnel device TE cannot be zero. Second, theaccuracy of circuit 70 is also limited because the potential of floatinggate fg changes another 100 mV to 200 mV over time after it is set dueto various factors, including detrapping of the tunnel devices anddielectric relaxation of all the floating gate fg capacitors.

An analog voltage reference storage device that uses a floating gate isdescribed in U.S. Pat. No. 5,166,562 and teaches the uses of hotelectron injection for injecting electrons onto the floating gate andelectron tunneling for removing electrons from the floating gate. Thefloating gate is programmed by controlling the current of the hotelectron injected electrons after an erase step has set the floatinggate to an initial voltage. See also U.S. Pat. No. 4,953,928. Althoughthis method of programming the charge on a floating gate is moreaccurate than earlier analog voltage reference circuits including afloating gate, the level of accuracy is still on the order of 50 mV to200 mV.

Prior art floating gate storage devices have sometimes used dualconduction of Fowler-Nordheim tunnel devices, i.e., wherein both theprogram and erase tunnel elements in a floating gate device are causedto conduct simultaneously in order to provide the coupling of chargeonto the floating gate. However, this method has only been used indigital circuits to program the floating gate to either a “1” conditionor a “0” condition to provide memory storage. The precise charge on thefloating gate in such applications is not of concern and so is notprecisely controlled in such circuits. According to the prior art, suchdual conduction digital programming of a floating gate is considered tobe a less efficient and desirable way than generating electronconduction through a single tunnel element to control the level ofcharge on a floating gate. Known disadvantages of dual conductiondigital programming of a floating gate include the fact that a largertotal voltage is required to provide dual conduction and tunnel oxidetrap-up is faster because more tunnel current is required.

An example of a prior art analog nonvolatile floating gate circuit thatuses dual conduction of electrons for adding and removing electrons froma floating gate is disclosed in U.S. Pat. No. 5,059,920, wherein thefloating gate provides an adaptable offset voltage input for a CMOSamplifier. In this device, however, only one Fowler-Nordheim tunneldevice is used. The electrons are injected onto the floating gate usinghot electron injection, while Fowler-Nordheim electron tunneling is usedto remove electrons from the floating gate, so as to accurately controlthe charge on the floating gate. This means of injecting electrons ontothe floating gate is used because the charge transfer is a controlledfunction of the voltage on the floating gate. Another example of a priorart dual conduction floating gate circuit is disclosed in U.S. Pat. No.5,986,927. A key problem with such prior art devices is that they do notcompensate for common-mode voltage and current offsets, common-modetemperature effects, and mechanical and thermal stress effects in theintegrated circuit.

Applications that require increased absolute voltage accuracy generallyuse a bandgap voltage reference. A bandgap voltage reference typicallyprovides approximately 25 mV absolute accuracy over time andtemperature, but can be configured to provide increased accuracy bylaser trimming or E² digital trimming at test. While a bandgap voltagereference provides greater accuracy and increased stability over theprior art voltage reference circuits discussed above, a bandgap voltagereference only provides a fixed voltage of about 1.2V. Therefore,additional circuitry, such as an amplifier with fixed gain, is needed toprovide other reference voltage levels. Moreover, prior art bandgapvoltage references typically draw a relatively significant current,i.e., greater than 10 μA.

What is needed is an analog programmable voltage reference circuit andthat can be quickly and accurately set to any analog voltage without theneed for additional amplification and that provides improved stabilityand accuracy over time and temperature as compared to prior art voltagereferences. It is also desirable that the improved stability andaccuracy be obtained in a voltage reference circuit that drawssignificantly less current than prior art voltage references.

SUMMARY OF THE INVENTION

The present invention is directed at addressing the above-mentionedshortcomings, disadvantages, and problems of the prior art. Broadlystated, the present invention provides a comparator circuit forcomparing a voltage signal to a reference voltage generated byprogrammable voltage reference, comprising a first floating gate havingcharge stored thereon; a second floating gate having charge storedthereon, wherein the difference in charge level between the first andsecond floating gates is a predetermined function of an input setvoltage that is capacitively coupled to the first floating gate during aset mode; a feedback circuit coupled between the first and secondfloating gates for causing the voltage on the first floating gate to bemodified during a read mode until the programmable voltage referencereaches a condition such that the voltage on the first floating gate isa predetermined function of the voltage on the second floating gate forcausing a reference voltage to be generated that is a predeterminedfunction of the input set voltage; and a first circuit for generating anoutput signal dependent upon the variation of the voltage signal fromthe reference voltage.

Broadly stated, the present invention also provides a comparator circuitfor comparing a voltage signal to a reference voltage generated byprogrammable voltage reference comprising a first floating gate forstoring charge thereon; a first steering capacitor coupled to the firstfloating gate for controlling the charge level on the first floatinggate as a function of an input set voltage that is coupled through thefirst steering capacitor to the first floating gate during a set mode; asecond floating gate for storing charge thereon; a first circuit coupledto the second floating gate for controlling the charge level on thesecond floating gate during the set mode; a feedback circuit coupledbetween the second floating gate and the first floating gate for causingthe charge level on the first floating gate to be modified during theset mode until the voltage on the first floating gate is a predeterminedfunction of the voltage on the second floating gate, and such that atthe conclusion of the set mode the difference in charge level betweenthe first and second floating gates is a predetermined function of theinput set voltage; a second circuit coupled to the first steeringcapacitor and to the feedback circuit for causing the input set voltageto be coupled to the first steering capacitor during the set mode, thesecond circuit further for creating a feedback loop between the firstfloating gate and the second circuit during a read mode, the feedbackloop including the first steering capacitor, wherein during the readmode the feedback loop causes the programmable voltage reference toreach a condition such that a reference voltage is generated that is apredetermined function of the input set voltage; and a third circuit forproviding an output signal dependent upon the variation of the voltagesignal from the generated reference voltage.

BRIEF DESCRIPTION OF THE DRAWINGS

The forgoing aspects and attendant advantages of the present inventionwill become more readily appreciated by reference to the followingdetailed description, when taken in conjunction with the accompanyingdrawings, wherein:

FIG. 1A is a schematic diagram that illustrates a cross-sectional viewof a prior art programmable floating gate circuit formed from twopolysilicon layers;

FIG. 1B is a similar prior art floating gate circuit formed from threepolysilicon layers;

FIG. 1C is a block diagram illustrating a prior art comparator forcomparing an input voltage signal with a voltage reference;

FIG. 2 is an equivalent circuit diagram for the reference circuitillustrated in FIGS. 1A and 1B;

FIG. 3 is a circuit diagram of a differential single floating gatecircuit according to the present invention for high precisionprogramming of a floating gate;

FIG. 4A is a circuit diagram of a differential dual floating gatecircuit according to another embodiment of the present invention;

FIG. 4B is a combined schematic and block diagram illustrating a singlefloating gate circuit coupled to the dual floating gate circuit of thepresent invention, during a set mode;

FIG. 5 is a flow diagram illustrating a method for setting a floatinggate using the single floating gate circuit;

FIGS. 6A-6D illustrate various voltage waveforms vs. time for a specificimplementation of the method of FIG. 5;

FIGS. 7A-7D illustrate various voltage waveforms vs. time for a specificimplementation, of the method of FIG. 5;

FIGS. 8A-8D illustrate various voltage waveforms vs. time for a specificimplementation of the method of FIG. 5;

FIG. 9 is a flow diagram illustrating a method for setting a floatinggate using the differential dual floating gate circuit of the presentinvention;

FIGS. 10A-10D illustrate various voltage waveforms vs. time for aspecific implementation of the method of FIG. 9;

FIGS. 11A-11D illustrate various voltage waveforms vs. time for aspecific implementation of the method of FIG. 9; and

FIGS. 12A-12D illustrate various voltage waveforms vs. time for aspecific implementation of the method of FIG. 9.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 3 is a circuit diagram of a differential single floating gatecircuit 30 according to the present invention for accurately setting afloating gate to an analog voltage during a high voltage set mode or setcycle. FIG. 4A is a circuit diagram of a differential dual floating gatecircuit 40 according to another embodiment of the present invention.Circuit 40 is also used to accurately set a floating gate to an analogvoltage during a high voltage set mode. Once the analog voltage level isset, both circuit 30 and circuit 40 can then be configured during a readmode as a precise voltage comparator circuit with a built-in voltagereference or a precise voltage reference circuit. A known comparator maybe used to compare the precise voltage reference of the presentinvention with a voltage signal. For example, FIG. 1C illustrates aknown comparator 62 for comparing an input voltage signal with a voltagereference, Vref, and generating an output signal. Preferably, the outputsignal generated is a first predetermined voltage level signal when theinput voltage signal is greater than Vref, and a second predeterminedvoltage level signal when the input voltage signal is less than Vref.Circuit 30 and circuit 40 are preferably implemented as an integratedcircuit manufactured using industry standard CMOS processing techniques.Since the sequence used during the set mode is similar for bothcircuits, circuit 30 and the method for programming a floating gateusing circuit 30 will be described first.

Circuit 30 comprises a floating gate fgØ at a node 2 that, at theconclusion of a set mode, is set to a voltage that is a function of, andpreferably is equal to an input set voltage VsetØ received at an inputterminal 300 coupled to a node 1. This set mode may be instituted at thefactory to cause floating gate fgØ to be set to a desired voltage.Alternatively, a later user of circuit 30 can cause circuit 30 to entera set mode wherever the user wishes to update the voltage on fgØ as afunction of the VsetØ voltage input by the user during this later, or inthe field, set mode operation. Circuit 30 further comprises a circuit310 that includes: a programming tunnel device TPØ formed betweenfloating gate fgØ and a programming electrode EpØ, at a node 3; an erasetunnel device TeØ formed between floating gate fgØ and an eraseelectrode EeØ, at a node 4; and a steering capacitor C1 coupled betweenfloating gate fgØ and a node 5.

Preferably, programming electrode EpØreceives a negative voltage duringthe set mode, and erase electrode EeØ receives a positive voltage duringthe set mode. Moreover, TpØ and TeØ are Fowler-Nordheim tunnel devicesthat are reasonably well matched by layout. The bottom plate of steeringcapacitor C1 is coupled to a predetermined voltage during the set modethat is preferably ground g1. Steering capacitor C1 is used to provide astable ground reference for floating gate fgØ.

Setting fgØ to a specific charge level during the set mode, whichcorresponds to a specific voltage at node 2, is achieved by taking EpØnegative and EeØ positive, such that the voltage at node 4 minus thevoltage at node 3 is two tunnel voltages or approximately 22V. Analternative is to take EpØ negative and EeØ positive such thatapproximately 5 nA of current flows from node 4 to node 3. In eithercase, both tunnel devices are conducting, i.e., the tunnel devices arein “dual conduction.” By operating in dual conduction, the voltage onthe floating gate fgØ can stabilize at a DC voltage level for as long atime as needed for Circuit 30 to settle to a very precise and accuratelevel. Operating two Fowler-Nordham tunneling devices in dual conductionis key to making it possible to set the floating gate fgØ voltage veryaccurately using either on-chip circuitry or test equipment off-chip.

In dual conduction, the tunnel devices, TeØ and TpØ, which arereasonably well matched as a result of their chip layout, will modifythe charge level on the floating gate fgØ by allowing electrons totunnel onto and off of floating gate fgØ so as to divide the voltagebetween nodes 4 and 3 in half. Thus, the floating gate voltage, i.e.,the voltage at node 2, will be VfgØ=Vnode3+(Vnode3−Vnode3)/2, which ishalf way between the voltage at node 4 and the voltage at node 3. Underthese conditions, the dual conduction current can typically charge ordischarge node 2, which typically has less than 5 pF capacitance, inless than 1 mSec. As this occurs, the floating gate voltage “tracks”directly with the voltage at nodes 3 and 4 and settles to a DC voltagethat is half way between those two voltages in a few mSec. Accordingly,VfgØ can be set to a positive or a negative voltage or zero voltsdepending upon the voltages at electrodes EeØ and EpØ. For example, ifthe tunnel voltage is approximately 11V for the erase and program tunneldevices TeØ and TpØ, and the voltage at electrode EeØ is set to about+16V and the voltage at electrode EpØ is about −6V, then VfgØ willsettle at about +5V, which is the midpoint between the two voltages. Ifthe voltage at electrode EeØ is set to about +11 V and the voltage atelectrode EpØ is about −11V, then VfgØ will go to about ØV. If thevoltage at electrode EeØ is set to about +6V and the voltage atelectrode EpØ is about −16V, then VfgØ will go to about −5V.

Note that, in a preferred embodiment, a specific voltage is notgenerated at node 3 during the set mode. The voltage used to control thecharge level on floating gate fgØ is the voltage at node 4. A currentsource IpØ, which is preferably implemented as a charge pump, providesthe necessary voltage compliance to generate a negative voltagesufficient to generate the voltage difference required to produce dualconduction tunneling in tunnel devices TeØ and TpØ.

Circuit 30 further includes a circuit 320 that compares VfgØ, thevoltage on the floating gate fgØ, with the voltage at node 1 andgenerates an output voltage Vout, at a node 6, that is a function of thedifference between VsetØ and the voltage at node, 1. Circuit 320preferably includes a differential amplifier (or differential stage) 322that is preferably configured to have an inverting input coupled tofloating gate fgØ, a non-inverting input coupled to node 1, and anoutput at a node 7. Circuit 320 preferably further includes a gain stage324 with an input coupled to node 7 and an output terminal 326, at node6. The differential stage compares the voltages received at its inputsand amplifies that difference, typically by a factor of 50 to 100. Thegain stage then further amplifies that difference by another factor of50 to 100. Moreover at the conclusion of the set mode, circuit 320ideally settles to a steady state condition such that VfgØ=VsetØ.

Referring again to FIG. 3, the differential stage 322 preferablyincludes enhancement mode transistors T1, T2, T3 and T4. Transistors T1and T2 are preferably NMOS transistors that are reasonably well matchedby layout, and transistors T3 and T4 are preferably PMOS transistorsthat are reasonably well matched by layout. The sources of NMOStransistors T1 and T2 are coupled together at a node 8. The drain ofNMOS transistor T1 is coupled to a node 9, and its gate is floating gatefgØ. The drain of NMOS transistor T2 is coupled to node 7, and its gateis coupled to node 1. PMOS transistor T3 is coupled common drain, commongate, to node 9, with its source coupled to node 10. The gate of PMOStransistor T4 is coupled to node 9. Its drain is coupled to node 7, andits source is coupled to node 10. A voltage supply Vcc, typically 3 to 5volts, is coupled to node 10, and a current source ItØ is coupledbetween node 8 and ground g1 to cause transistors T1, T2, T3 and T4 tooperate in either the prethreshold or linear region during the set mode.Current source ItØ can be implemented using any number of conventionalcircuits.

One benefit provided by differential stage 322 is that temperature andstress effects track in transistors T1-T4 because the temperaturecoefficient Tc of these transistors is approximately the same. That is,any variation in the temperature of the integrated circuit chip on whicha floating gate circuit according to the present invention isimplemented will have the same effect on transistors T1-T4, such thatdifferential stage 322 is in a balanced condition essentiallyindependent of temperature. Similarly, mechanical and thermal stresseffects are also common-mode and so their effects are also greatlyreduced.

The gain stage 324 preferably includes a PMOS pull-up transistor T5biased by Vcc, and includes a current source pull-down load IgØ. Thesource of transistor T5 is coupled to node 10. Its gate is coupled tothe differential stage PMOS pull-up T4 at node 7, and its drain iscoupled to node 6. Current source pull-down load IgØ is coupled betweennode 6 and ground g1. The gain stage 324 also preferably includes acompensation capacitor C2 coupled between nodes 6 and 7. Current sourcepull-down load IgØ is preferably an active load using an NMOS currentmirror or a depletion device. Using an active current source withrelatively high output resistance, the gain stage 324 can provide avoltage gain of about 100. The output swing of the gain stage 324 isnearly full rail from ground to Vcc. Stability and response of thiscircuit can be easily adjusted for various processes using compensationcapacitor C2. In this configuration, transistor T5 provides good currentsourcing capacity, but current sinking is limited to the current in thecurrent source pull-down IgØ. Therefore, the current in IgØ should begreater than the pull-up current required by the load on Vout so thatthe gain stage 324 is capable of adequately controlling Vout, at node 6,by sinking all of the current that flows to node 6.

Circuit 320 further operates in the following manner during the setmode. When biased by Vcc and current source ItØ, T1 senses VfgØ relativeto input set voltage VsetØ (300), which is sensed by transistor T2, andthe amplified difference appears as Vout at node 6. If VfgØ is initiallyless than VsetØ, T2 is turned on more than T1, and the current flowthrough T2 (and through T4 since they are connected in series) isinitially greater than the current flow through T1 (and correspondinglyT3). The gate of the pull up transistor T3 is tied to the drain of T3and also to the gate of pullup transistor T4, which makes the current inT4 a mirror of the current in T3. When more current flows through T4than T3, the voltage, V7, on node 7 drops below the voltage, V9, on node9. The lower voltage on node 7 causes the current through T5 to increasewhich pulls Vout high. The voltage gain of the differential stage 322 istypically about 80 and the voltage gain of the output stage 324 is about100, giving an overall gain from VsetØ to Vout of about 8000. A negativefeedback path or loop from Vout to the inverting input fgØ is necessaryfor the differential circuit 320 to settle at the point where thevoltage on fgØ is equal to VsetØ. During the set mode, this feedbackpath is provided by tunnel devices TFØ, TeØ and transistors T6 and T7,as described in the next section. When Vout goes high, the negativefeedback path pulls VfgØ higher. As VfgØrises, the current in T1increases until it matches the current in T2. At this point, thedifferential circuit 320 settles to a steady state condition where thecurrents in transistors T1, T2, T3, and T4 match, and VfgØ=VsetØ.

Those skilled in the art will realize that circuit 320 can beimplemented using PMOS transistors for T1 and T2 and NMOS transistorsfor T3 and T4. For this implementation, the gain stage 324 comprises anNMOS pull-down transistor T5 coupled to a current source pull-up loadIgØ.

Circuit 30 also includes a feedback loop coupled between nodes 6 and 2.During the set mode, this feedback loop causes the voltage differentialbetween tunnel electrodes EeØ and EpØ to be modified by modifying thevoltage at node 4 as a function of the output voltage at node 6. Thefeedback loop preferably comprises a level shift circuit that ispreferably a tunnel device TFØ formed between node 6 and a node 11 and atransistor T7, preferably an NMOS transistor, coupled common gate,common drain to a node 12, with its source coupled to node 11. Alsoincluded in the feedback loop is a transistor T6, preferably an NMOStransistor, having its gate coupled to node 12, its source coupled tonode 4, and thereby to erase tunnel device TeØ, and its drain coupled toa node 13.

As earlier indicated, the maximum output of the gain stage isapproximately Vcc. However, this is not high enough to drive Vefb atnode 12 directly, because Vefb typically needs to go to about 14 to 19volts, which is well above the usual 3 to 5 volt Vcc supply level. Thelevel shift circuit TFØ and T7 shifts the relatively low output voltageat node 6 (Vout) up to the desired 14 to 19 volt range. Preferably, TFØand TeØ are reasonably well matched by layout and transistors T6 and T7are reasonably well matched by layout. Under these conditions, when thesame tunnel current flows through both TFØ and TeØ, the level shifttracks the erase tunnel voltage as measured by the voltage drop fromnode 4 to node 2, which drives the gate of transistor T1 (fgØ) to thesame voltage as the voltage on the gate of transistor T2 (VsetØ) whencircuit 320 settles. This adds to the improved setting accuracy of thecircuit.

One advantage of having the level shift track the erase tunnel voltageis that, as the voltage necessary to create tunneling changes, due tocharge trapping in the dielectric as more and more set cycles areperformed, output voltage Vout continues to follow the input set voltageVsetØ and operate in the same voltage range. Another advantage is thatwhen the output voltage Vout is not quite equal to the input set voltageVsetØ, the error introduced by the finite gain of circuit 320 is verysmall. For example, if circuit 320 has a gain of 10,000 and Vout is 1volt lower than VsetØand VfgØ when circuit 30 settles, VfgØ will have anerror of 1V/10,000, or only 0.1 mV.

Circuit 30 also preferably includes current sources I2 and IpØ, and acapacitor CpØ. Current source I2 is coupled between node 12 and a highvoltage supply HV+ at node 13 for establishing Vefb at the beginning ofthe set mode and for providing tunnel current through TFØ. Currentsource I2 can be implemented using any number of conventional methods.However, current source I2 is preferably a current regulator that isbiased by HV+, such as a current mirror comprising P-Channel devicesthat operate in the prethreshold region. In this manner, current sourceI2 will automatically go to whatever positive voltage needed at node 12to establish the tunnel current through tunnel device TFØ. Currentsource I2 preferably generates a current that is about the same as IpØ.This means the current through tunnel device TFØ is about the same asthe current through tunnel devices TeØ and TpØ.

Current source IpØ is coupled between node 3 and ground g1. Currentsource IpØ is preferably a P-Channel charge pump that is used as anegative current source to pump a controlled tunnel current out ofprogramming tunnel device TpØ. As mentioned above, since IpØ is acurrent source, it functions to automatically goes to whatever negativevoltage at node 3 that is needed to establish the tunnel current at thedesired level. Current source IpØ has sufficient voltage compliance toprovide this negative voltage. Moreover, once the current through thetunnel devices is established, the voltage across the tunnel devices isalso well defined by their Fowler-Nordheim characteristics. Therefore,current source IpØ produces Vp, the voltage at node 3, by controllingthe current through tunnel device TpØ. Using a current source IpØ is thepreferred way to assure that tunnel devices TeØ and TpØ are operating ata current level that is high enough to allow dual conduction and toallow the feedback circuit to work, but low enough to avoid excessivecurrent flow which damages the tunnel devices. Capacitor CpØ controlsthe discharge of current through the tunnel devices when, as explainedin more detail below, IpØ is shut down at the conclusion of the setmode.

Those skilled in the art will realize that Vp can also be produced usinga fixed voltage supply that is about 24 to 30 volts below Vefb. However,this topology should be used with caution because the current inFowler-Nordheim tunnel devices varies exponentially with the appliedvoltage. In particular, very high current will flow through the tunneldevices if the voltage differential is too high, and extremely lowcurrent may flow if the voltage differential is too low. Very highcurrents will damage or “wear out” the tunnel devices due to rapidcharge trapping in the dielectric, and if the tunnel current is too low,the feedback circuit will not be able to tunnel charge onto or off offgØ, and thus will not be able to control the voltage on fgØ. Moreover,it is also possible to connect Vefb to a current source and connect Vpto the feedback circuit such that Vp controls the voltage on fgØ.However, this would require the feedback circuit to produce a controllednegative voltage, which is more difficult to integrate in a standardCMOS process.

FIG. 5 is a flow diagram illustrating a method 50 for setting a floatinggate that may be implemented during a set mode, for instance, by circuit30 of FIG. 3. FIGS. 6A-8D illustrate voltage waveforms for Vout, Vp,Vefb, VfgØ and VsetØ, for the specific implementation of method 50discussed below relative to those figures. Each of the four waveformsshown in FIGS. 6A-8D are the same, only the voltage axes of some ofthese waveforms are modified to illustrate specific details. In thecircuit implementation illustrated in FIGS. 6A-8D: VsetØ=4.00V; Vcc=+5V,HV+ is about 22V, IpØ is about 6 nA, I2 is about 6 nA, ItØ is about 5nA; and IgØ is about 20 nA.

At step 51, circuit 30 is powered up at the beginning of the set mode,which is illustrated in FIGS. 6A-8D as time t₀, and at some pointthereafter receives input set voltage VsetØ. FIGS. 6A-8D furtherillustrate VsetØ being held at a constant voltage of 4.00V. In additionVcc is set to +5V, HV+ is ramped up to a high positive voltage of about+22V, which turns on I2, and current source IpØ is turned on to enablethis current source to begin generating its corresponding current.Thereafter, according to the preferred implementation of the remainingsteps 52-56 of method 50, circuit 30 can set VfgØ to within about 0.5 mVof VsetØ in about 30 mSec, as illustrated in FIGS. 6A-8D.

At step 52, circuit 30 causes tunnel devices TeØ and TpØto operate in adual conduction mode under the control of the voltage differentialbetween the erase and programming electrodes EeØ and EpØ, respectively,for modifying the charge level on floating gate fgØ. Dual conductionoccurs when tunnel current flows through both TeØ and TpØ. Tunnelcurrent flows through TeØ and TpØwhen the voltage differential betweenthe erase and programming electrodes is at least two tunnel voltages orapproximately 22V as discussed earlier.

Preferably, circuit 30 causes dual conduction in the following manner.Current source I2 pulls node 12, Vefb, up relatively quickly to about+18V. Vefb (node 12) turns on transistor T6, which pulls VeØ (node 4) toone Vt below Vefb. Charge pump IpØ gradually charges capacitor CpØ andramps Vp (node 3) down to a negative voltage of about −11V in about 2mSec. Once Vp ramps down to the point where the difference between VeØand Vp is at least two tunnel voltages, tunnel current flows throughboth tunnel devices TeØ and TpØ, under the control of IpØ, and VfgØ iscontrolled directly by Vefb. I2 continues to pull up Vefb until Vefbreaches Vout+1TV+1Vt, where 1TV is the tunnel voltage across tunneldevice TFØ, and 1Vt is the threshold voltage of transistor T7. When atleast one tunnel voltage exists across TFØ tunnel current flows throughTFØ, and TFØ and T7 act as level shift devices such that Vefb iscontrolled directly by Vout. At step 53, circuit 30 compares VfgØ withVsetØ and generates an output voltage Vout that is a function of thedifference between VfgØ and VsetØ. Circuit 30 then, at step 55, causesthe voltage differential between Vefb and Vp to be modified as afunction of Vout, by modifying Vefb, and circuit 30 repeats steps 52through 55 until circuit 30 settles to a steady state condition, at step54, where VfgØ is approximately equal to VsetØ. At this point circuit 30is powered down, at step 56. As a result of method 50, fgØis set to acharge level that will remain essentially the same over time.

The voltage waveforms of FIGS. 6A-8D illustrate how circuit 30 functionsduring steps 52 through 55. Dual conduction occurs after about 0.5 mSec,which is illustrated as time t₁ in FIGS. 6A-8D. Prior to time t₁,Vout=ØV, Vefb is pulled up by I2, and VfgØ is not controlled by Vefb.However, once tunnel current is flowing through TeØ, TpØ and TFØ at timet₁: the differential stage senses that VfgØ is not equal to VsetØ; Voutis a function of the difference between VfgØ and VsetØ; Vefb followsVout; and VfgØ follows Vefb. For about the next 2.5 mSec, which isillustrated as time t₁ to time t₂ in FIGS. 6A-8D, VfgØ oscillates aboveand below VsetØ as Vefb moves up and down as a function of the negativefeedback loop.

At the beginning of this oscillation period at time t₁, it can be seenin FIG. 6 that VfgØ is, below VsetØ. Thus, transistor T1 is OFF andtransistor T2 is ON, which pulls down node 7. This turns on transistorT5, which quickly pulls up Vout from zero volts, also illustrated inFIGS. 6A-8D. Since tunnel current is flowing through TFØ, TFØ and T7 actas level shifters such that Vefb pulls up 1TV and 1Vt above Vout. Vefbthen pulls up VfgØ through tunnel device TeØ. Since Vp is continuing toramp down to a predetermined negative voltage, VfgØ is pulled greaterthan VsetØ after about 1 mSec. At that point, the differential stage 322senses that VfgØ is greater than VsetØ, and the gain stage 324 amplifiesthat difference, quickly pulling Vout low, which pulls Vefb low andpulls VfgØ back down low. When VfgØ is approximately equal to VsetØ,circuit 320 ceases to oscillate except for some noise coupled to circuit320 from the charge pump IpØ, as best shown in FIGS. 7A-8D beginning attime t₂.

Beginning at time t₁, current source IgØ in the gain stage 324 producesa current that is much larger than that generated by current source I2.Therefore, the gain stage 324 is able control Vout by sinking all thecurrent from I2 that flows through T7 and TFØ to Vout. In addition, thecompensation capacitor C2 in the gain stage 324 is made large enough toassure the feedback loop is stable and settles in less than about 1mSec. The level shift in Vefb caused by the Vt across T7 approximatelymatches the voltage drop in T6. The level shift in Vefb caused by thetunnel voltage across TFØ approximately matches the voltage drop acrosstunnel device TeØ, so that when the differential and gain stages settle,VfgØ and Vout are about the same. This can be seen in FIG. 8 where Voutsettles to within about 30 mV of VfgØ, beginning at time t₂. This 30 mVdifference is generated by noise coupled to fgØ from the IpØ currentsource. Specifically, negative charge pump IpØ, which pumps charge fromthe program tunnel device TpØ, produces noise on Vp. This noise iscoupled to floating gate fgØ through program tunnel device capacitanceCpØ. The noise on Vp cannot be seen in the Vp waveform in FIG. 8 becausethe voltage axis is shown in volts, whereas the voltage axis for theVfgØ vs. VsetØ waveform is shown in millivolts.

Referring again to FIG. 5, once circuit 30 settles at step 54 such thatVfgØ is approximately VsetØ, circuit 30 is powered down at step 56.Powering down circuit 30 ramps Vefb and Vp toward ground as seenbeginning at t₃ in FIGS. 7A-8D. Step 56 may be performed by simplyconcurrently shutting off the charge pump IpØ and HV+, and therebycurrent source I2, at time t₃. However, this may significantly impactVfgØ once Vefb and Vp have ramped back to ØV. As explained above, noisefrom IpØ limits the accuracy of setting VfgØ equal to VsetØ when thenegative charge pump that generates Vp is ON. This means VfgØ may not beequal to VsetØ at the beginning of the ramping of Vefb and Vp to ground.If VfgØ is not equal to VsetØ when this ramp down begins, then VfgØ willnot equal VsetØ after Vp and Vefb reach ØV. Moreover, during the rampdown, the current that continues to flow through tunnel devices TeØ andTpØ is typically not the same. This further affects the final chargelevel on floating gate fgØ.

To overcome this limitation and thereby maintain the same charge levelon floating gate fgØ during the ramping of Vefb and Vp to ground, thecurrent in the erase and program tunnel devices must be the same duringthis time. In order to maintain the same current in both tunnel devices,the voltage across each of the tunnel devices must be the same, whichmeans Vefb must ramp down to ØV at the same rate as Vp ramps up to ØV.Also the tunnel device characteristics must be well matched.

Accordingly, circuit 30 should be powered down, at step 56, in thefollowing preferred manner. Once circuit 320 and the feedback circuithave stabilized for a time and it is clear that further accuracy tosetting VfgØ is limited primarily by the charge pump noise, shownbeginning at t2, IpØ is shut off at t3 to eliminate the pump noise.However, HV+, and thereby current source I2, are left on such that thefeedback circuit is still active and continues to control Vefb. At thepoint when the negative charge pump is shut off, tunnel currentcontinues to flow through TeØ and TpØ as CpØ discharges, which pulls upVp back towards ØV. This tunnel current and the capacitance CpØdetermine the ramp rate on Vp. As Vp ramps up, the voltage on floatinggate fgØ is capacitively coupled upwards. Circuit 320 senses VfgØ movingupwards and ramps Vefb down towards ØV through the feedback circuit. AsVefb ramps down and Vp ramps up, the tunnel current in tunnel devicesTeØ and TpØ decreases rapidly due to the steep slope of theirFowler-Nordheim tunnel device characteristics. Since feedback responsetime depends directly on the current in the erase tunnel device, thefeedback circuit response slows down as Vefb ramps down. As the tunnelcurrent decreases, both the ramp rate and feedback response times slowdown and VfgØ gradually moves closer to VsetØ. For instance, FIGS. 8A-8Dshow that VfgØ has converged to within about 0.5 mV of VsetØ for a setmode time of 30 mSec, and VfgØ may be set even more accurately byallowing a ramp down time of greater than 30 mV. After VfgØ is allowedto converge on VsetØ for an amount of time determined by the level ofaccuracy desired, the HV+ voltage supply and thereby the I2 currentsource can be shut off, for instance at t4, without affecting the chargeon fgØ. Moreover, Vcc may be shut off. In other words, once VfgØ isdetected as being within a predetermined threshold level of VsetØ, asteady state condition has been reached and power to circuit 30 can beshut off without affecting the value of VfgØ.

It is important that the response of the feedback circuit is slow enoughto assure VfgØis always slightly above VsetØ so circuit 320 and thefeedback circuit continue to ramp Vefb down. If VfgØ goes below VsetØand the feedback switches the direction Vefb is ramping, the feedbacksystem will start to oscillate very slowly and VfgØ will diverge fromVsetØ instead of converge towards VsetØ. After Vefb and Vp have ramped afew volts towards ØV and VfgØ is very close to VsetØ, Vefb and Vp can beramped to ØV quickly, as illustrated at time t4 in FIGS. 6A-8D, byshutting off HV+ because the current in TeØ and TpØ is so low it nolonger affects the charge on the floating gate fgØ. CpØ must becarefully set to assure that as Vp rises to ØV, the feedback paththrough the differential stage 322, gain stage 324, TFØ level shift andTeØ devices to floating gate fgØ is able to ramp down Vefb and move VfgØcloser and closer to VsetØ. If CpØ is too small: Vp rises very quickly;the delay through the feedback path causes Vefb to ramp down too slowly;and VfgØ will rise above VsetØ instead of converging towards VsetØ. IfCpØ is too large, the response of the feedback path is too fast and Vefbis ramped down too much, such that VfgØ may undershoot which causes thecircuit to oscillate slowly. If circuit 320 is allowed to oscillate,VfgØ will tend to diverge instead of converge towards VsetØ.Accordingly, CpØ is designed such that the feedback response time isslightly slower than the discharge rate of CpØ. Preferably CpØ should beset at about 2.4 pf.

At the end of the set mode, at time t4, floating gate fgØ will thencontinue to indefinitely, store the charge level programmed on floatinggate fgØ during the set mode, subject to possible charge loss, e.g., dueto detrapping of electrons or dielectric relaxation over time, withoutany external power being supplied to circuit 30. In addition, althoughin the example illustrated above VfgØ was set to be equal to VsetØ,those of ordinary skill in the art will realize that in anotherembodiment of the present invention, circuit 30 can be configured suchthat. VfgØ is set to a voltage that is some other predetermined value ofVsetØ.

With the above understanding of the differential floating gate circuit30 of FIG. 3 and of the method 50 of setting floating gate fgØillustrated by the flow diagram in FIG. 5, we now turn to thedifferential dual floating gate circuit 40 of FIG. 4A. Circuit 40preferably comprises a reference floating gate fgr at a node 15 and asecond floating gate fg1 at a node 14. At the conclusion of a set mode,both floating gates fgr and fg1 are programmed, respectively, to chargelevels such that the difference in charge level between fgr and fg1 is afunction of an input set voltage capacitively coupled to fgr during theset mode. Thereafter, during a read mode, circuit 40 may be configuredas a voltage reference circuit such that an output reference voltage isgenerated that is a function of the input set voltage and is preferablyequal to the input set voltage. The set mode may be instituted at thefactory to cause fgr and fg1 to be set to their respective desiredcharge levels, and thereby, to cause circuit 40 to generate a desiredoutput reference voltage whenever circuit 40 is later caused to enterits read mode. Alternatively, a later user of circuit 40 can causecircuit 40 to enter a set mode whenever the user wishes, to therebyupdate the difference in charge levels between fgr and fg1 as a functionof the VsetØ voltage input and thus to update the output referencevoltage generated by circuit 40 during subsequent read mode.

The sequence used to program floating gates fgr and fg1 in circuit 40 issimilar to the sequence used to set the charge level on floating gatefgØ in circuit 30 of FIG. 3. One major difference between the previouslydescribed single floating gate circuit 30 and the dual floating gatecircuit 40 is that the gate of transistor T2 in FIG. 3 is replaced by afloating gate, fg1, in FIG. 4A, that cannot be connected directly to anexternal voltage. In order to set the voltage on fg1, a voltage Vx iscoupled at a node 27 to the gate of a transistor T15 in circuit 40, suchthat Vfg1 is set to Vx−1Vt−1TV, where 1 Vt is the threshold voltage oftransistor T15 and 1TV is the tunnel voltage of an erase tunnel deviceTe1.

In a preferred embodiment, Vx is generated by a second floating gatevoltage reference circuit, e.g., circuit 30. FIG. 4B is a combinedschematic and block diagram illustrating this embodiment. Circuits 30and 40 in FIG. 4B are identical to the circuits illustrated,respectively, in FIGS. 3 and 4A. In the embodiment shown in FIG. 4B, ahigh voltage set cycle is performed on both the single floating gatedifferential circuit 30 and the dual floating gate differentialreference circuit 40 at the same time. During the set mode, circuit 30generates the voltage at node 12 such that floating gate fgØ is set asdescribed earlier, wherein VsetØ for circuit 30 is an internally orexternally supplied predetermined voltage, such as +4v. Floating gatefg1 is therefore set to a voltage that is a predetermined function ofthe voltage on floating gate fgØ, and is preferably set to beapproximately equal to VfgØ assuming the tunnel devices in bothdifferential circuits, i.e., circuits 30 and 40, are reasonably wellmatched. The voltage set on floating gate fg1 is then used to set thevoltage on floating gate fgr, such that Vfgr is a predetermined functionof Vfg1, and preferably approximately equal to Vfg1, as described ingreater detail below.

Circuit 40 further comprises a circuit 410 that includes: a programmingtunnel device Tpr formed between floating gate fgr and a programmingelectrode Epr, at a node 16; an erase tunnel device Ter formed betweenfloating gate fgr and an erase electrode Eer, at a node 17; and asteering capacitor Cfgr coupled between floating gate fgr and a node 18.Circuit 40 also comprises a circuit 420 that includes: a programmingtunnel device Tp1 formed between floating gate fg1 and a programmingelectrode Ep1, at node 16, and an erase tunnel device Te1 formed betweenfloating gate fg1 and an erase electrode Ee1, at a node 28. Preferably,programming electrodes Epr and Ep1 receive a negative voltage during theset mode, and erase electrodes Eer and Ee1 receive a positive voltageduring the set mode. Moreover, tunnel devices Tpr, Tp1, Ter and Te1 arepreferably Fowler-Nordheim tunnel devices that are reasonably wellmatched as a result of their chip layout, and these tunnel devices areideally reasonably well matched with tunnel devices TpØ and TeØ ofcircuit 30.

Also included in circuit 40 is a steering capacitor Cfg1 coupled betweenfloating gate fg1 and a node 32. The bottom plate of steering capacitorCfg1 is coupled to a predetermined voltage during the set mode that ispreferably ground g1. Steering capacitor Cfg1 is used to provide astable ground reference for floating gate fg1. Circuit 40 also includesa transistor T15 that has its drain coupled to a high voltage supplyHV+, at a node 26, its source coupled to node 28, and its gate coupledto node 27.

Setting a voltage on floating gate fgr during the set mode is achievedby taking electrode Epr negative and electrode Eer positive such thatthe voltage at node 17 minus the voltage at node 16 is two tunnelvoltages or approximately 22V. The dual conduction current at 22V istypically approximately one to two nanoamps. An alternative is to createa sufficient voltage differential across electrode Epr and electrode Eerto generate a current flow of approximately 5 nA from node 16 to node17. In either case, both tunnel devices are conducting, i.e., the tunneldevices are in “dual conduction.” By operating in dual conduction, thevoltage on the floating gate fgr can stabilize at a DC voltage level foras long a time as needed to enable circuit 40 to end the set modeprocess in a controlled fashion such that the voltage on floating gatefgr settles to a very precise and accurate level. Operating in dualconduction with feedback through at least one of the tunnel devices iskey to making it possible to set the floating gate fgr voltage veryaccurately.

In dual conduction, the tunnel devices Ter and Tpr, which are reasonablywell matched by layout, will modify the charge level on floating gatefgr by allowing electrons to tunnel onto and off of floating gate fgr soas to divide the voltage between nodes 17 and 16 in half. Thus, thefloating gate voltage, i.e., the voltage at node 15, will beVfgr=Vnode16+(Vnode17−Vnode16)/2, which is half way between the voltageat node 17 and the voltage at node 16. Under these conditions, the dualconduction current can typically charge or discharge node 15, whichtypically has less than 1.0 pF capacitance, in less than 1 mSec. As thisoccurs, the floating gate voltage “tracks” directly with the voltage atnodes 16 and 17 and settles to a DC voltage that is half way betweenthose two voltages in a few mSec. Accordingly, Vfgr can be set to apositive or negative voltage or zero volts depending upon the value ofthe voltages existing at electrodes Eer and Epr. For example, if thetunnel voltage is approximately 11V for the erase and program tunneldevices Ter and Tpr, and the voltage at electrode Eer is set to about+16V and the voltage at electrode Epr is set to about −6V, then Vfgrwill settle at about +5V, which is the midpoint between the twovoltages. If the voltage at Eer is set to about +11V and the voltage atEpr is set to about −11 V, then Vfgr will go to about ØV. If the voltageat Eer is set to about +6V and the voltage at Epr is set to about −16V,then Vfgr will go to about −5V.

As stated earlier, circuit 40 programs both floating gates fgr and fg1during the set mode. Correspondingly, tunnel devices Tp1 and Te1similarly operate in dual conduction to modify the charge level onfloating gate fg1 by allowing electrons to tunnel onto and off offloating gate fg1 so as to divide the voltage between nodes 28 and 16 inhalf. In addition, if circuit 30 is used during the set mode to generatethe voltage Vx at node 27 in circuit 40, ideally, the tunnel currents inboth circuits 30 and 40 are reasonably well matched, and transistorsT13, T14, T15 are reasonably well matched, such that when circuits 30and 40 settle, Vfgr=Vfg1=VfgØ. Although this condition is preferable,circuit 40 will set Vfgr=Vfg1 even where floating gate fg1 is not setexactly equal to floating gate fgØ, since floating gates fg1 and fgØ arenot in the same differential circuit.

Circuit 40 further includes a circuit 430 that compares Vfgr, thevoltage on floating gate fgr to Vfg1, the voltage on floating gate fg1,and that generates an output voltage Vout, at node 19, that is afunction of the difference between the voltages on floating gates fgrand fg1. Circuit 430 preferably includes a differential amplifier (ordifferential stage) 432 that is preferably configured to have anon-inverting input coupled to floating gate fg1 and an inverting inputcoupled to floating gate fgr. Circuit 430 further includes a gain stage434 with an input coupled to node 20 and an output terminal 436, at node19. The differential stage 432 compares the voltages received at itsinputs and amplifies that difference, typically by a factor of 50 to100. The gain stage 434 then further amplifies that difference byanother factor of 50 to 100. Moreover, at the conclusion of the setmode, Circuit 430 ideally settles to a steady state condition, such thatVfgr=Vfg1=Vout.

Referring again to FIG. 4B, the differential stage 432 preferablyincludes enhancement mode transistors T8, T9, T10 and T11. TransistorsT8 and T9 are preferably NMOS transistors that are reasonably wellmatched by layout, and transistors T10 and T11 are preferably PMOStransistors that are reasonably well matched by layout. The sources ofNMOS transistors T8 and T9 are coupled together at a node 21. The drainof NMOS transistor T8 is coupled to a node 22, and its gate is floatinggate fgr. The drain of NMOS transistor T9 is coupled to a node 20, andits gate is floating gate fg1. PMOS transistor T10 is coupled commondrain, common gate, to node 22, with its source coupled to a node 23.The gate of PMOS transistor T11 is coupled to at node 22. Its drain iscoupled to node 20, and its source is coupled to node 23. A voltagesupply Vcc, typically 3 to 5 volts, is coupled to node 23, and a currentsource Itr is coupled between node 21 and ground g1 to cause transistorsT8, T9, T10 and T11 to operate in either the pretheshold or linearregion during the set mode. Current source Itr can be generated usingany number of conventional circuits.

The gain stage 434 preferably includes a PMOS pullup transistor T12biased by Vcc and a current source pull-down load Igr. The source oftransistor Tl2 is coupled to node 23. Its gate is coupled to thedifferential stage pull-up transistor T11 at node 20, and its drain iscoupled to node 19. Current source pull-down load Igr is coupled betweennode 19 and ground g1. The gain stage 434 also preferably includes acompensation capacitor C3 coupled between nodes 19 and 20. Currentsource pull-down load Igr is preferably an active load using an NMOScurrent mirror or a depletion device. Using an active current sourcewith relatively high output resistance, the gain stage 434 can provide avoltage gain of about 100. The output swing of the gain stage 434 isnearly full rail from ground to Vcc. Stability and response of thiscircuit can be easily adjusted for various processes using compensationcapacitor C3. In this configuration, transistor T12 provides goodcurrent sourcing capability, but current sinking is limited to thecurrent in the current source pull-down Igr. Therefore, the current inIgr should be greater than the pull-up current required by the load onVout so that the gain stage 434 is capable of adequately controllingVout by sinking all of the current that flows to Vout.

Circuit 430 further operates in the following manner. When biased by Vccand current source Itr, T8 senses Vfgr relative to Vfg1, which is sensedby transistor T9, and the amplified difference appears as Vout at node19. If Vfgr is initially less than Vfg1, T9 is turned on more than T8,and the current flow through T9 (and through T11 since they areconnected in series) is initially greater than the current flow throughT8 (and correspondingly T10). The gate of the pullup transistor T10 istied to the drain of T10 and also to the gate of pullup transistor T11,which makes the current in T11 a mirror of the current in transistorT10. When more current flows through T11 than T10, the voltage, V20, onnode 20 drops below the voltage V22, on node 22. The lower voltage onnode 20 causes the current through transistor T12 to increase, whichpulls Vout high. The voltage gain of the differential stage 432 istypically about 80 and the voltage gain of the gain stage 434 istypically about 100 giving an overall gain from Vfg1 to Vout of about8000. A negative feedback path from Vout to the inverting input fgr isnecessary for circuit 430 to settle at the point where the voltage onfgr is equal to the voltage on fg1. During the set mode, this feedbackpath is provided by tunnel devices TF1 and Ter and transistors T13 andT14 as described in the next section. When Vout goes high, the negativefeedback path pulls Vfgr higher. As Vfgr rises, the current intransistor T8 increases until it matches the current in transistor T9.At this point the differential circuit 430 settles at the point wherethe currents in transistors T8, T9, T10 and T11 match and Vfgr=Vfg1.

Those skilled in the art will realize that circuit 430 can beimplemented using PMOS transistors for T8 and T9 and NMOS transistorsfor T10 and T11. For this implementation, the gain stage 434 preferablycomprises an NMOS pull-down transistor T12 coupled to a current sourcepull-up load Igr.

Circuit 40 also includes a feedback loop coupled between nodes 19 and15. During the set mode, this feedback loop causes the voltagedifferential between tunnel electrodes Eer and Epr to be modified bymodifying the voltage at node 17 as a function of the voltage at node19. The feedback loop preferably comprises a level shift circuit,preferably a tunnel device TF1 formed between node 19 and a node 24, anda transistor T14, preferably an NMOS transistor, coupled common gate,common drain at a node 25, with its source coupled to node 24. Alsoincluded in the feedback loop is a transistor T13, preferably an NMOStransistor, having its gate coupled to node 25, its source coupled tonode 17, and thereby to erase tunnel device Ter, and its drain coupledto node 26.

As earlier indicated, the maximum output of the gain stage 434 isapproximately Vcc. However, this is not high enough to drive the voltageat node 25 (Vefb) directly, because Vefb typically needs to go to about14 to 19 volts, which is well above the usual 3 to 5 volt Vcc supplylevel. The level shift circuit TF1 and T14 shifts the low output voltageat node 19 (Vout) up to the desired 14 to 19 volt range. Preferably, TF1and Ter are reasonably well matched by layout and T13 and T14 arereasonably well matched by layout. Under these conditions, when the sametunnel current flows through both TF1 and Ter, the level shift tracksthe erase tunnel voltage as measured by the voltage drop from node 17 tonode 15 which drives the gate of transistor T8 (fgr) to the same voltageas the voltage on the gate of transistor T9 (fg1) when circuit 430settles. This adds to the improved setting accuracy of the circuit.

One advantage of having the level shift track the erase tunnel voltageis that, as the voltage necessary to create tunneling changes, due tocharge trapping in the dielectric as more and more set cycles areperformed, the circuit 430 output, Vout, continues to follow Vfg1 andoperate in the same voltage range. Another advantage is that when theoutput voltage Vout is not equal to Vfgr, the error introduced by thefinite gain of circuit 430 is very small. For example, if circuit 430has a gain of 10,000 and Vout is 1 volt lower than Vfg1 minus Vfgr whencircuit 40 settles, Vfg1 minus Vfgr will have an error of 1V/10,000, oronly 0.1 mV.

Circuit 40 also preferably includes current sources I2 r and Ipr, and acapacitor Cpr. Current source I2 r is coupled between node 25 and HV+ atnode 26 for establishing Vefb at the beginning of the set mode and forproviding tunnel current through TF1. Current source I2 r can beimplemented using any number of conventional circuits. However, currentsource I2 r is preferably a current regulator that is biased by HV+,such as a current mirror comprising P-Channel devices that operate inthe prethreshold region. In this manner, current source I2 r willautomatically go to whatever positive voltage is needed at node 25 toestablish the tunnel current through tunnel device TF1. Moreover,current source I2 r preferably generates a current that is about halfthat of current source Ipr, so that the current through tunnel deviceTF1 is about the same as the current through tunnel devices Ter, Tpr,Te1, and Tp1.

Current source Ipr is coupled between node 16 and ground g1. Currentsource Ipr is preferably a P-Channel charge pump that is used as anegative current source to pump a controlled tunnel current out ofprogramming tunnel devices Tpr and Tp1. Since Ipr is a current source,it automatically goes to whatever negative voltage at node 16 that isneeded to establish the tunnel current at the desired level, assumingthe current source has sufficient voltage compliance. Moreover, once thecurrent through the tunnel devices is established, the voltage acrossthe tunnel devices is also well defined by their Fowler-Nordheimcharacteristics. Therefore, current source Ipr produces Vp1, the voltageat node 16, by controlling the current through tunnel devices Tpr andTpl. Using a current source Ipr is the preferred way to assure thattunnel devices Ter, Te1, Tpr and Tp1 are operating at a current levelthat is high enough to allow dual conduction and to allow the feedbackcircuit to work, but low enough to avoid excessive current flow whichdamages the tunnel devices. Capacitor Cpr, controls the rate ofdischarge of current through the tunnel devices when, as explained inmore detail below, current source Ipr is shut down at the conclusion ofthe set mode. Moreover, when circuit 30 is used to generate the voltageVx at node 27 in circuit 40 during the set mode, to achieve the idealcondition of setting Vfgr=Vfg1=VfgØ, preferably current sources I2 r and12 (of FIG. 3) are reasonably well matched, current source Ipr is abouttwice as large as current source IpØ (of FIG. 3), and capacitors Cpr andCpØ (of FIG. 3) are reasonably well matched. In addition, HV+ is thesame in circuit 30 and in circuit 40.

Those skilled in the art will realize that Vp1 can also be producedusing a fixed voltage supply that is about 24 to 30 volts below thevoltage at nodes 17 and 28. However, this topology should be used withcaution because the current in Fowler-Nordheim tunnel devices variesexponentially with the applied voltage. In particular, very high currentwill flow through the tunnel devices if the voltage differential is toohigh, and extremely low current may flow if the voltage differential istoo low. Very high currents will damage or “wear out” the tunnel devicesdue to rapid charge trapping in the dielectric, and if the tunnelcurrent is too low, the feedback circuit will not be able to tunnelcharge onto or off of fgr, and thus will not be able to control thevoltage on fgr. Moreover, it is also possible to connect erase electrodeEer to a current source and connect programming electrode Epr to thefeedback circuit such that Vp1 controls the voltage on fgr. However,this would require the feedback circuit to produce a controlled negativevoltage, which is more difficult to integrate in a standard CMOSprocess.

Finally, circuit 40 also preferably includes a circuit 440. Circuit 440preferably comprises a switch S4 that is preferably a MOS transistorthat is coupled between nodes 18 and 19 and a MOS transistor switch S5coupled between node 18 and an input voltage terminal 450. In the setmode, switch S4 is OFF, and switch S5 is ON such that the input setvoltage Vset can be coupled to the bottom plate of steering capacitorCfgr.

Coupling input voltage Vset to terminal 450 during the set mode enablescircuit 40 to program a charge level difference between floating gatesfgr and fg1 that is a predetermined function of Vset. Thereafter duringa subsequent read mode, circuit 40 generates a reference voltage that isa predetermined function of Vset, and is preferably equal to Vset.Specifically, during the set mode, the voltage programmed acrosscapacitor Cfg1 is the same as that programmed on floating gate fg1,since Cfg1 is preferably coupled to ground during the set mode. Whereas,the voltage programmed across capacitor Cfgr is Vfgr (which is ideallyequal to Vfg1) minus Vset. Thereafter, when power and Vset are removedat the conclusion of the set mode, node 18 goes to zero volts and Vfg1remains the same, but Vfgr is equal to the voltage across Cfgr, which isequal to (Vfg1-Vset). Thus, a difference in charge level exists betweenfloating gates fgr and fg1 that is equal to the difference in chargeremaining on capacitors Cfg1 and Cfgr at the conclusion of the set mode.This difference in charge level between fgr and fg1, which is apredetermined function of Vset, is what causes a reference voltage to begenerated at node 19 during a read mode for circuit 40 that is apredetermined function of Vset, and is preferably equal to Vset. Toproduce a voltage reference output equal to Vset, S5 is turned off andS4 is turned on, which connects Vset to node 18, which is coupled to fg1through Cfgr. Vout settles at the voltage where Vfgr=Vfg1, which occurswhen node 18=Vset.

FIG. 9 is a flow diagram illustrating a method 90 for setting a floatinggate that may be implemented during a set mode, for instance, bycircuits 30 and 40 of FIG. 4B. FIGS. 10A-12D illustrate voltagewaveforms for Vout, Vp1, Vefb (circuit 40), Vfgr and Vfg1, for thespecific implementation of method 90 discussed below relative to thosefigures. Each of the four waveforms shown in FIGS. 10-12 are the same,only the voltage axes of some of these waveforms are modified toillustrate specific details. Preferably, Vfg1 is set to 4 volts, suchthat Vfg1=Vfgr=4V at the conclusion of the set mode. However, Vfg1 maybe set to any voltage in order to set Vfgr during the set mode. In thefollowing example, Vfg1 is set to 4V during the set mode. In the circuitimplementation illustrated in FIGS. 10A-12D: Vin=4.00V, Vcc =+5V, HV+ isabout 22V, IpØ, I2 and I2 r are each about 6 nA, Ipr is about 12 nA, ItØand Itr are each about 5 nA; and IgØ and Igr are each about 20 nA.

At step 91, circuits 30 and 40 are powered up at the beginning of theset mode, which is illustrated in FIGS. 6A-8D and FIGS. 10A-12D as timet₀. Circuit 30 at some point thereafter receives an input set voltage,e.g., VsetØ, and the Vx signal from circuit 30 is received at node 27into the gate of transistor T15 in circuit 40. In addition Vcc is set to+5V, HV+ is ramped up to a high positive voltage of about +22V, whichturns on current sources I2 and I2 r. Finally, charge pumps IpØ and Iprare turned on to enable these current sources to begin generating theircorresponding currents. Thereafter, according to the preferredimplementation of the remaining steps 92-96 of method 90, circuit 40 canset Vfgr to within about 0.5 mV of Vfg1 in about 30 mSec, as illustratedin FIGS. 10A-12D.

At step 92, circuit 40 causes tunnel devices Ter, Tpr, Te1 and Tp1 tooperate in a dual conduction mode under the control of the voltagedifferential between the corresponding floating gate erase and programelectrodes for modifying the charge level on floating gates fgr and fg1.Dual conduction occurs when tunnel current flows through these fourtunnel devices. Tunnel current flows through both Ter and Tpr when thevoltage differential (Vefb-Vp1) is at least two tunnel voltages orapproximately 22V as discussed earlier, and tunnel current flows throughTe1 and Tp1 when the voltage differential (Vx−Vp1) is at least twotunnel voltages.

Preferably, circuit 40 causes dual conduction in the following manner.Current sources I2 and I2 r are turned on and start to pull up Vx (node12) and Vefb (node 25) respectively. For example, Vefb ramps up to about18 volts in less than 0.5 mSec. The negative current sources IpØ and Iprare turned on and pull Vp (node 3) and Vp1 (node 16) negative.Respectively, in this instance, charge pump IpØ gradually ramps Vp downto about −11V voltage in about 2 mSec, and charge pump IpØ graduallyramps Vp1 down to about −11V voltage in about 2 mSec. Current source IpØcontrols the tunnel current that flows through tunneling devices TpØ andTeØ in circuit 30, and current source Ipr controls the tunnel currentthat flows through tunneling devices Ter, Tpr, Te1 and Tp1 in circuit40.

Circuit 30 produces a Vx signal controlled by feedback from circuit 320as described earlier. Vx (node 27) turns on transistor T15, which pullsup Ve1 (node 28) to one Vt below Vefb. When Vp1 ramps down to the pointwhere the difference between Vp1 and Ve1 is 2 tunnel voltages, tunnelcurrent flows through tunneling devices Te1 and Tp1. Once tunnel currentis flowing in Te1 and Tp1, the voltage on floating gate fg1 (node 14) iscontrolled directly by Vx and to first order tracks the voltage onfloating gate fgØ in circuit 30 for the rest of the set mode.

Circuit 40 produces a Vefb signal controlled by feedback from circuit430 in a manner analogous to circuit 30. Vefb (node 25) turns ontransistor T13, which pulls up Ver (node 17) to one Vt below Vefb. WhenVp1 (node 16) ramps down to the point where the difference between Vp1and Ver is 2 tunnel voltages, tunnel current flows through tunnelingdevices Ter and Tpr, and the voltage on fgr (node 15) is controlleddirectly by Vefb. I2 r continues to pull up Vefb until Vefb reachesVout+1TV+1Vt, where 1TV is the tunnel voltage across tunnel device TF1and 1Vt is the threshold voltage of transistor T14. When at least onetunnel voltage exists across TF1, tunnel current flows through TF1, andTF1 and transistor T14 act as level shift devices such that Vefb iscontrolled directly by Vout (node 19). At step 93, circuit 40 comparesVfgr with Vfg1 and generates an output voltage Vout that is a functionof the difference between Vfgr and Vfg1. Circuit 40 then, at step 95,causes the voltage differential between Vefb and Vp1 to be modified as afunction of Vout, and circuit 40 repeats steps 92 through 95 untilcircuit 40 settles to a steady state condition, at step 94 where Vfgr isapproximately equal to Vfg1. At this point circuit 40 is powered down,at step 96. As a result of method 90, floating gates fgr and fg1 areeach set to a charge level that will remain essentially the same overtime.

The voltage waveformms of FIGS. 10A-12D illustrate how circuit 40functions during steps 92 through 95. Dual conduction of tunnel devicesTe1 and Tp1 occurs after about 0.5 mSec, as best seen in FIGS. 10A-10D.Prior to this time, Vfg1 is zero volts. However, once tunnel current isflowing through tunnel devices Te1 and Tp1, Vfg1 is controlled by andoscillates with Vx from circuit 30, and Vfg1 tracks VfgØ. Dualconduction of tunnel devices Ter and Tpr, on the other hand, occursslightly later at about 1.5 mSec, which is illustrated as t1 in FIGS.10A-12D. Prior to time t1 Vout=ØV, Vefb is pulled-up by I2 r and isramping toward about 18V, and Vfgr is not controlled by Vefb. Oncetunnel current is flowing through tunnel devices Ter, Tpr, and TF1 attime t1: circuit 430 senses that Vfgr is not equal to Vfg1; Vout is afunction of the difference between Vfgr and Vfg1; Vefb follows Vout; andVfgr follows Vefb. For about the next 2.0 mSec which is illustrated astime t1 to time t2 in FIGS. 11A-12D, Vfgr oscillates as Vefb moves upand down as a function of the negative feedback loop. Thereafter, thenegative feedback loop causes the differential and gain stages 432 and434, respectively, to settle to a steady state condition, where circuit430 ceases to oscillate except for about 30 mV of noise coupled tocircuit 430 from the charge pump Ipr as best shown in FIGS. 11A-12Dbeginning at time t2.

Beginning at time t1, current source Igr in the gain stage 434 producesa current that is much larger than that generated by current source I2r. Therefore, the gain stage 434 is able to control Vout by sinking allthe current from current source I2 r that flows through T14 and TF1 toVout. In addition, the compensation capacitor C3 in the gain stage 434is made large enough to assure that the feedback loop is stable andsettles in less than about 1 mSec. The level shift in Vefb caused by theVt across transistor T14 approximately matches the voltage drop in T13.The level shift in Vefb caused by the tunnel voltage across tunneldevice TF1 approximately matches the voltage drop across tunnel deviceTer, so that when the differential and gain stages settle, Vfgr, Vfg1and Vout are about the same. This can be seen in FIGS. 12A-12D whereVout settles to about 3.7V beginning at time t2, reflecting about 30 mVof noise coupled to floating gates fgr and fg1 from current source Ipr.

Referring again to FIG. 9, once circuit 40 settles at step 94 such thatVfgr is approximately equal to Vfg1, circuit 40 is powered down at step96. Powering down circuit 40 ramps down the voltages at the erase andprogramming electrodes toward ground, as seen beginning at time t3 inFIGS. 10A-12D. Step 96 may be performed by simply concurrently shuttingoff all of the current and voltage sources in circuits 30 and 40 at timet3. However, this may significantly impact Vfgr once Vefb and Vp1 haveramped back to ØV. As explained above, noise from charge pump Ipr limitsthe accuracy of setting Vfgr equal to Vfg1 when the negative charge pumpthat generates Vp1 is ON. This means Vfgr may not be equal to Vfg1 atthe beginning of the ramping of Vefb and Vp1 to ground. If Vfgr is notequal to Vfg1 when this ramp down begins, then Vfgr will not equal Vfg1after Vp1 and Vefb reach ØV. Moreover, during the ramp down, the currentthat continues to flow through tunnel devices Te1 and Tp1 and throughTer and Tpr is typically not the same. This further affects the finalcharge level on floating gates fgr and fg1.

To overcome this limitation and thereby maintain the same charge levelon floating gates fgr and fg1 during the ramping of Vefb and Vp1 toground, the current in the erase and program tunnel devices must be thesame during this time. In order to maintain the same current in thesetunnel devices, the voltage across each of the tunnel devices must bethe same, which means Vefb and Vx must ramp down to ØV at the same rateas Vp1 ramps up to ØV. Also the tunnel device characteristics must bereasonably well matched.

Accordingly circuit 40 should be powered down, at step 96, in thefollowing preferred manner. Once circuits 320 and 430 and the feedbackcircuits in both circuits 30 and 40 have stabilized for a time and it isclear that further accuracy to setting VfgØ, Vfgr and Vfg1 is limitedprimarily by the charge pump noise, shown beginning at t2, IpØ and Iprare shut off at t3 to eliminate the pump noise. However, HV+, andthereby current sources I2 and I2 r, are left on such that the feedbackcircuit in circuit 30 is still active and continues to control Vx, andthe feedback circuit in circuit 40 is still active and continues tocontrol Vefb. At the point when the negative charge pumps are shut off,tunnel current continues to flow through tunnel devices TeØ and TpØ ascapacitor CpØ discharges, which pulls up Vp back towards ØV. This tunnelcurrent and the capacitance due to CpØ determine the ramp rate on Vp.Similarly, tunnel current continues to flow through tunnel devices Ter,Te1, Tpr and Tp1 as capacitor Cpr discharges, which pulls up Vp1 backtowards ØV. This tunnel current and the capacitance due to Cpr determinethe ramp rate on Vp1.

Feedback in circuit 30 drives Vx such that VfgØ is set as describedpreviously. To first order, Vfg1 tracks VfgØ, assuming Vp and Vp1 trackeach other reasonably closely. Similarly to what occurs in circuit 30,in circuit 40 as Vp1 ramps up, the voltage on floating gate fgr iscapacitively coupled upwards. Circuit 430 senses Vfg1, moving upwardsand ramps Vefb down toward ØV through the feedback circuit. As Vefbramps down and Vp1 ramps up toward ØV, the tunnel current in tunneldevices Ter and Tpr decrease rapidly due to the steep slope of theirFowler-Nordheim tunnel device characteristics. Since feedback responsetime depends directly on the current in the erase tunnel device, thefeedback circuit response slows down as Vefb ramps down toward ground.As the tunnel current decreases, both the ramp rate and feedbackresponse times slow down and Vfgr gradually moves closer to Vfg1.

For instance, FIGS. 12A-12D show that Vfgr has converged to within about0.5 mV of Vfg1 for a set mode time of 30 mSec, and Vfgr may be set evenmore accurately with respect to Vfg1 by allowing a ramp down time ofgreater than 30 mV. After Vfgr is allowed to converge on Vfg1 for anamount of time determined by the level of accuracy desired, theHV+voltage supply, and thereby the I2 r current source, can be shut off,for instance at time t4, without affecting the charge on floating gatesfgr and fg1. Moreover, Vcc may be shut off.

It is important that the response of the feedback circuit is slow enoughto assure Vfgr is always slightly above Vfg1 so circuit 430 and thefeedback circuit continue to ramp Vefb down. If Vfgr goes below Vfg1 andthe feedback switches the direction Vefb is ramping, the feedback systemwill start to oscillate very slowly and Vfgr will diverge from Vfg1instead of converge towards Vfg1. After Vefb and Vp1 have ramped a fewvolts toward ground and Vfgr is very close to Vfg1, Vefb and Vp1 can beramped to ØV quickly, as illustrated at time t4 in FIGS. 10B and 10C, byshutting off HV+, because the current in tunnel devices Ter and Tpr isso low it no longer affects the charge on the floating gate fgr.Capacitor Cpr must be carefully set to assure that as Vp1 rises towardground, the feedback path through the differential stage 432, gain stage434, TF1 level shift and Ter devices to floating gate fgr is able toramp down Vefb and move Vfgr closer and closer to Vfg1. If capacitor Cpris too small, Vp1 rises very quickly, the delay through the feedbackpath causes Vefb to ramp down too slowly, and Vfgr will rise above Vfg1instead of converging towards Vfg1. If Cpr is too large, the response ofthe feedback path is too fast and Vefb is ramped down too much, suchthat Vfgr may undershoot which causes the circuit to oscillate slowly.If circuit 430 is allowed to oscillate, Vfgr will tend to divergeinstead of converge towards Vfg1. Accordingly, Cpr is designed such thatthe feedback response time is slightly slower than the discharge rate ofCpr. Preferably Cpr should be set at about 2.4 pf.

At the end of the set mode, at time t4, floating gates fgr and fg1 willcontinue to indefinitely store the charge level programmed on themduring the set mode, subject to possible charge loss, e.g., due todetrapping of electrons or dielectric relaxation over time, without anyexternal power being supplied to circuit 40. In addition, although inthe example illustrated above Vfgr was set to be approximately equal toVfg1, those of ordinary skill in the art will realize that in anotherembodiment of the present invention, circuit 40 can be configured suchthat Vfgr is set a voltage that is some other function of Vfg1.

As stated above, once floating gate fgØ is set during the set mode,circuit 30 may be configured during a read mode as a voltage referencecircuit or as a comparator circuit with a built-in voltage reference.Likewise, once floating gates fg1 and fgr are set during the set mode,circuit 40 may be configured during a read mode as a voltage referencecircuit or a comparator circuit with a built-in voltage reference. Whencircuit 40 is configured as a voltage reference, it provides a moreaccurate reference voltage at node 19 over that provided by circuit 30when circuit 30 is configured as a voltage reference. This is becausewhen high voltages are ramped down in circuit 40, any offsets coupledthrough the tunnel devices to the corresponding floating gates fgr andfg1 are common mode and do not change the voltage difference between thetwo floating gates and thus does not change the reference voltage atnode 19.

The circuit and method for programming described in the text above waschosen as being illustrative of the best mode of the present invention.All embodiments of the present invention described above areillustrative of the principles of the invention and are not intended tolimit the invention to the particular embodiments described.Accordingly, while the preferred embodiment of the invention has beenillustrated and described, it will be appreciated that various changescan be made therein without departing from the spirit and scope of theinvention as claimed.

1. A comparator circuit for comparing a voltage signal to a referencevoltage generated by programmable voltage reference, comprising: a firstfloating gate having charge stored thereon; a second floating gatehaving charge stored thereon, wherein the difference in charge levelbetween said first and second floating gates is a predetermined functionof an input set voltage that is capacitively coupled to said firstfloating gate during a set mode; a feedback circuit coupled between saidfirst and second floating gates for causing the voltage on said firstfloating gate to be modified during a read mode until said programmablevoltage reference reaches a condition such that the voltage on saidfirst floating gate is a predetermined function of the voltage on saidsecond floating gate for causing a reference voltage to be generatedthat is a predetermined function of said input set voltage; and a firstcircuit for generating an output signal dependent upon the variation ofthe voltage signal from said reference voltage.
 2. The comparatorcircuit of claim 1, wherein the output signal generated by said firstcircuit is a first predetermined voltage level signal when said voltagesignal is greater than said reference voltage, and a secondpredetermined voltage level signal when said voltage signal is less thansaid reference voltage.
 3. The comparator circuit of claim 1, whereinsaid reference voltage is approximately equal to said input set voltage.4. The comparator circuit of claim 1, wherein said reference voltage iswithin 10 mV of the value of said input set voltage.
 5. The comparatorcircuit of claim 1, wherein said reference voltage is within 2 mV of thevalue of said input set voltage.
 6. The comparator circuit of claim 1,wherein said comparator circuit is fabricated using CMOS processingtechniques.
 7. The comparator circuit of claim 1, wherein said feedbackcircuit comprises: a differential stage comprising a first, second,third and fourth transistor, each said transistor having a gate and afirst and second terminal, wherein said first floating gate is the gateof said first transistor, said second floating gate is the gate of saidsecond transistor, the first terminals of said first and secondtransistors are coupled together, the second terminals of said first andthird transistors are coupled together and are further coupled to thegates of said third and fourth transistors, the second terminals of saidsecond and fourth transistors are coupled together, and the firstterminals of said third and fourth transistors are coupled together; anda gain stage comprising a fifth transistor, having a gate and a firstand second terminal, a gain stage current source, and a compensationcapacitor, wherein the gate of said fifth transistor is coupled to thesecond terminals of said second and fourth transistors, the firstterminal of said fifth transistor is coupled to the first terminals ofsaid third and fourth transistors, said compensation capacitor iscoupled between the gate and the second terminal of said fifthtransistor, and the second terminal of said fifth transistor is coupledto said gain stage current source and to said second circuit.
 8. Thecomparator circuit of claim 7, further comprising a feedback circuitcoupled between said first floating gate and the junction of saidcurrent source and second terminal of said fifth transistor for causingthe charge level on said first floating gate to be modified during saidset mode until said floating gate circuit reaches a steady statecondition such that the voltage on said first floating gate is apredetermined function of the voltage on said second floating gate, andsuch that at the conclusion of said set mode the difference in chargelevel between said first and second floating gates is a predeterminedfunction of said input set voltage.
 9. The comparator circuit of claim7, wherein said first and second transistors are NMOS transistors, saidthird and fourth transistors are PMOS transistors, said fifth transistoris a PMOS pull-up transistor, and said current source is a pull-download.
 10. The comparator circuit of claim 7, wherein said first andsecond transistors are PMOS transistors, said third and fourthtransistors are NMOS transistors, said fifth transistor is an NMOSpull-down transistor, and said current source is a pull-up load.
 11. Acomparator circuit for comparing a voltage signal to a reference voltagegenerated by programmable voltage reference comprising: a floating gatehaving a voltage thereon; a first tunnel device formed between saidfloating gate and a first tunnel electrode, and a second tunnel deviceformed between said floating gate and a second tunnel electrode forcausing electrons to tunnel onto and off of said floating gate formodifying the voltage on said floating gate as a function of a voltagedifferential between said first and second tunnel electrodes; a firstcircuit coupled to said floating gate for causing the voltage on saidfloating gate to be compared to a first voltage; a feedback circuitcoupled between said floating gate and said first circuit forcontrolling said voltage differential such that the voltage on saidfloating gate is modified until said programmable voltage referencereaches a steady state condition wherein the voltage on said floatinggate is a predetermined function of said first voltage; wherein saidfirst voltage is an input set voltage during a set mode and wherein saidfirst voltage is a predetermined voltage during a read mode that is afunction of said input set voltage, said programmable voltage referencereaching a steady state condition during said read mode wherein areference voltage is generated that is a function of said input setvoltage; and a second circuit for providing an output signal dependentupon the variation of the voltage, signal from said generated referencevoltage.
 12. The comparator circuit of claim 11, wherein the outputsignal generated by said first circuit is a first predetermined voltagelevel signal when said voltage signal is greater than said referencevoltage, and a second predetermined voltage level signal when saidvoltage signal is less than said reference voltage.
 13. A comparatorcircuit for comparing a voltage signal to a reference voltage generatedby programmable voltage reference comprising: a first floating gate forstoring charge thereon; a first steering capacitor coupled to said firstfloating gate for controlling the charge level on said first floatinggate as a function of an input set voltage that is coupled through saidfirst steering capacitor to said first floating gate during a set mode;a second floating gate for storing charge thereon; a first circuitcoupled to said second floating gate for controlling the charge level onsaid second floating gate during said set mode; a feedback circuitcoupled between said second floating gate and said first floating gatefor causing the charge level on said first floating gate to be modifiedduring said set mode until the voltage on said first floating gate is apredetermined function of the voltage on said second floating gate, andsuch that at the conclusion of said set mode the difference in chargelevel between said first and second floating gates is a predeterminedfunction of said input set voltage; a second circuit coupled to saidfirst steering capacitor and to said feedback circuit for causing saidinput set voltage to be coupled to said first steering capacitor duringsaid set mode, said second circuit further for creating a feedback loopbetween said first floating gate and said second circuit during a readmode, said feedback loop including said first steering capacitor,wherein during said read mode said feedback loop causes saidprogrammable voltage reference to reach a condition such that areference voltage is generated that is a predetermined function of saidinput set voltage; and a third circuit for providing an output signaldependent upon the variation of the voltage signal from said generatedreference voltage.
 14. The comparator circuit of claim 13, wherein saidreference voltage is approximately equal to said input set voltage. 15.The comparator circuit of claim 13, wherein said reference voltage iswithin 10 mV of the value of said input set voltage.
 16. The comparatorcircuit of claim 13, wherein said reference voltage is within 2 mV ofthe value of said input set voltage.
 17. The comparator circuit of claim13, wherein said second circuit further comprises a first switch coupledbetween said first steering capacitor and an input terminal forreceiving said input set voltage, and further comprising a fourthcircuit further comprising a second switch coupled between said firststeering capacitor and said second circuit, wherein during said set modesaid first switch is ON and said second switch is OFF, and during saidread mode said first switch is OFF and said second switch is ON.